#ifndef BITMAP_H
#define BITMAP_H

#include "comm/types.h"
/**
 * 他妈的 为什么不用c自带的位图
 */
typedef struct _bitmap_t{
    int bit_count;
    uint8_t* bits;


}bitmap_t;

int bitmap_byte_count(int bit_count);
void bitmap_init(bitmap_t* bitmap,uint8_t* bits,int count,int init_bit);
int bitmap_get_bit(bitmap_t* bitmap,int index);
void bitmap_set_bit(bitmap_t* bitmap,int index,int count, int bit);
int bitmap_is_set(bitmap_t* bitmap,int index);
int bitmap_alloc_nbits(bitmap_t* bitmap,int bit, int count);


#endif